In a storage system, it is often the case that to write one block of data, on average half a block of data requires migration. As a result, writing data to the storage system introduces significant latency in the system and, consequently, reduces the overall performance of the system. In order to manage data in a storage system, a garbage collector is typically used to reclaim memory from data that is no longer in use.